//加法
function accAddPro() {
    var args = [];
    for (var i = 0; i < arguments.length; i++) {
        args.push(arguments[i]);
    }
    return Decimal.addBatch([args]);
}

//减法
function accSubPro() {
    var args = [];
    for (var i = 0; i < arguments.length; i++) {
        args.push(arguments[i]);
    }
    return Decimal.subBatch(args);
}

//乘法
function accMulPro() {
    var args = [];
    for (var i = 0; i < arguments.length; i++) {
        args.push(arguments[i]);
    }
    return Decimal.mulBatch(args);
}

//除法
function accDivPro() {
    var args = [];
    for (var i = 0; i < arguments.length; i++) {
        args.push(arguments[i]);
    }
    return Decimal.divBatch(args);
}

//获取金额单位
function getUnit(unitCode) {
    // 元
    if (unitCode == '1') {
        return 1;
    }
    // 万元
    if (unitCode == '2') {
        return 10000;
    }
    // 亿元
    if (unitCode == '3') {
        return 100000000;
    }
    return 1;
}

// 格式化千分位数字
function formatNumber(str){
    let s = str.split(".")[0].split("").reverse().join("").replace(/(\d{3})+?/g, function (s) {
        return s + ',';
    }).split("");
    if (isNaN(s[s.length - 1])) {
        s.pop(s.length - 1);
    }
    return s.reverse().join("") + '.' + str.split(".")[1];
}

// 判断字符串长度 汉字算两个字符 英文或其他算一个字符
function getStringLength(val) {
    let len = 0;
    if (isNullorEmpty(val)) {
        return len;
    }
    for (let i = 0; i < val.length; i++) {
        var c = val.charAt(i);
        if (c.match(/[^\x00-\xff]/ig) != null) {
            len += 2;
        } else {
            len += 1;
        }
    }
    return len;
}

//校验凭证代码中文字符等 暂时只校验中文
function checkChinese(val) {
    if(isNullorEmpty(val)) {
        return true;
    }
	let reg = new RegExp("[\\u4E00-\\u9FFF]+","g");
    if(reg.test(val)) return true;
    return false;
}

// 获取金额字符串整数部分长度
function getAmtNoDecimalLength(val) {
    let len = 0;
    if (isNullorEmpty(val)) {
        return len;
    }
    val = val.toString();
    let pointIdx = val.indexOf('.');
    val = pointIdx === -1 ? val : val.substring(0, pointIdx);
    return val.length;
}

